'use strict';
/*
 *@description: 授课包对象
 *@author: wudandan
 *@date: 2020-09-28 15:41:08
*/
import YJTObject from 'yj-object';
class itemData extends YJTObject {
  constructor () {
    const Fields = {
      // 标签id
      tagId: '',
      // 标签值code
      enumCode: '',
      // 标签值名称
      enumName: '',
      // 资源编码
      itemCode: '',
      // 标签名称
      tagName: ''
    };
    super(Fields);
  }

  get tagId () {
    return this._tagId;
  }

  set tagId (val) {
    this._tagId = val;
  }

  get enumCode () {
    return this._enumCode;
  }

  set enumCode (val) {
    this._enumCode = val;
  }

  get enumName () {
    return this._enumName;
  }

  set enumName (val) {
    this._enumName = val;
  }

  get itemCode () {
    return this._itemCode;
  }

  set itemCode (val) {
    this._itemCode = val;
  }

  get tagName () {
    return this._tagName;
  }

  set tagName (val) {
    this._tagName = val;
  }
}
class teachPackageData extends YJTObject {
  constructor () {
    const Fields = {
      // ID
      id: '',
      // 资源标题
      title: '',
      // 海报地址
      url: '',
      // pc资源格式
      pcExtension: '',
      // 移动端资源格式
      mobileExtension: '',
      // 总热度
      hotNum: '',
      // 序号
      sort: '',
      // 资源编码
      code: '',
      // 资源描述
      desc: '',
      /* 关联类型 1资源，2试卷，3文件夹，4资源本体文件，
      5微课，6个性试卷，7录音，8课时、课时包、 目录，
      9听力训练，12 知识点 */
      type: '',
      // 圆形图标地址
      iconUrl: '',
      // 方形图标地址
      squareUrl: '',
      // 资源标签
      itemDTOList: {
        type: Array,
        generics: itemData
      }
    };
    super(Fields);
  }

  get id () {
    return this._id;
  }

  set id (val) {
    this._id = val;
  }

  get title () {
    return this._title;
  }

  set title (val) {
    this._title = val;
  }

  get url () {
    return this._url;
  }

  set url (val) {
    this._url = val;
  }

  get pcExtension () {
    return this._pcExtension;
  }

  set pcExtension (val) {
    this._pcExtension = val;
  }

  get mobileExtension () {
    return this._mobileExtension;
  }

  set mobileExtension (val) {
    this._mobileExtension = val;
  }

  get hotNum () {
    return this._hotNum;
  }

  set hotNum (val) {
    this._hotNum = val;
  }

  get sort () {
    return this._sort;
  }

  set sort (val) {
    this._sort = val;
  }

  get code () {
    return this._code;
  }

  set code (val) {
    this._code = val;
  }

  get desc () {
    return this._desc;
  }

  set desc (val) {
    this._desc = val;
  }

  get type () {
    return this._type;
  }

  set type (val) {
    this._type = val;
  }

  get iconUrl () {
    return this._iconUrl;
  }

  set iconUrl (val) {
    this._iconUrl = val;
  }

  get squareUrl () {
    return this._squareUrl;
  }

  set squareUrl (val) {
    this._squareUrl = val;
  }

  get itemDTOList () {
    return this._itemDTOList;
  }

  set itemDTOList (val) {
    this._itemDTOList = val;
  }
}
class DataInfo extends YJTObject {
  constructor () {
    const Fields = {
      // 用户名称
      userName: '',
      teachPackageDTOList: {
        type: Array,
        generics: teachPackageData
      }
    };
    super(Fields);
  }

  get userName () {
    return this._userName;
  }

  set userName (val) {
    this._userName = val;
  }

  get teachPackageDTOList () {
    return this._teachPackageDTOList;
  }

  set teachPackageDTOList (val) {
    this._teachPackageDTOList = val;
  }
}
export default class ResourceData extends YJTObject {
  constructor () {
    const Fields = {
      data: {
        type: Array,
        generics: DataInfo
      }
    };
    super(Fields);
  }

  get data () {
    return this._data;
  }

  set data (val) {
    this._data = val;
  }
}
